package com.ym.medical.domain.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ym.medical.enums.InquiryOrderIoTypeEnum;
import com.ym.medical.enums.InquiryOrderPaymentStateEnum;
import com.ym.medical.enums.InquiryOrderStateEnum;
import com.ym.medical.enums.PatientDetailRelationEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 患者端订单列表VO
 *
 * @author: 李涛
 * @version: 2019年07月16日 13:49
 */
@Data
@ApiModel("患者端订单列表VO")
public class MyOrderListVo {
	/**
	 * 订单主键
	 */
	@ApiModelProperty("订单主键")
	private Long id;

	/**
	 * 用户ID
	 */
	@ApiModelProperty("用户ID")
	private Long userId;

	/**
	 * 患者主键Id
	 */
	@ApiModelProperty("患者ID")
	private Long patientId;
	/**
	 * 患者名称
	 */
	@ApiModelProperty("患者名称")
	private String patientName;

	/**
	 * 医生ID
	 */
	@ApiModelProperty("医生ID")
	private String doctorId;

	/**
	 * 医生名字
	 */
	@ApiModelProperty("医生名字")
	private String doctorName;

	/**
	 * 科室类型
	 */
	@ApiModelProperty("科室类型")
	private String doctorType;

	/**
	 * 科室类型
	 */
	@ApiModelProperty("科室类型")
	private String doctorTypeName;

	/**
	 * 医生头像
	 */
	@ApiModelProperty("医生头像")
	private String doctorHead;

	/**
	 * 订单状态
	 */
	@ApiModelProperty("订单状态,key=InquiryOrderStateEnum")
	@JsonSerialize(converter = InquiryOrderStateEnum.Covert.class)
	private String orderState;

	/**
	 * 订单类型
	 */
	@ApiModelProperty("订单类型,key=InquiryOrderIoTypeEnum")
	@JsonSerialize(converter = InquiryOrderIoTypeEnum.Covert.class)
	private String ioType;

	/**
	 * 订单编号
	 */
	@ApiModelProperty("订单编号")
	private String ioNum;

	/**
	 * 内容
	 */
	@ApiModelProperty("订单内容")
	private String content;

	/**
	 * 患者与本人关系
	 */
	@ApiModelProperty("患者与本人关系")
	@JsonSerialize(converter = PatientDetailRelationEnum.Covert.class)
	private String relation;


	@ApiModelProperty("订单创建时间")
	private String createTime;

	@ApiModelProperty("支付价格")
	private Double paymentPrice;

	@ApiModelProperty("支付状态")
	@JsonSerialize(converter = InquiryOrderPaymentStateEnum.Covert.class)
	private String paymentState;

	@ApiModelProperty("最大聊天次数")
	private int chatMaxNum;

	@ApiModelProperty("聊天室ID")
	private Long roomMainId;

	@ApiModelProperty("聊天室状态")
	private String roomState;

	@ApiModelProperty("医生云信账户")
	private String doctorAccid;

	@ApiModelProperty("医生云信密码")
	private String doctorPwd;

	@ApiModelProperty("患者云信账户")
	private String patientAccid;

	@ApiModelProperty("患者云信密码")
	private String patientPwd;

	@ApiModelProperty("评价ID")
	private Long commonId;

	@ApiModelProperty("订单来源")
	private String orderSource;
}
